home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 1.iso
/
ARGONET
/
PD
/
FILER
/
PACK.ZIP
/
!PackDisc
/
Readme
< prev
next >
Wrap
Text File
|
1996-06-18
|
8KB
|
172 lines
Help file for PackDisc 0.05
===========================
Overview
--------
This program will increase the free space on any FileCore based filing
system. This free space which is created comes from the wasted space in
shared fragments. !PackDisc rearranges which files share fragments with each
other in such a way as to minimise the remaining wasted space.
PackDisc is ideal on directories which have constant contents and several
small files, for example application directories, as the small files can be
rearranged more effectively and the space saved should remain saved.
It may also be useful for PD libraries or magazine discs or anyone else who
wants to use every last sector on a floppy - it can usually save at least a
couple of KB from a typical floppy. I saved 11K on a copy of the RISC OS 3
App1 disc. On my whole hard drive I saved about 10MB.
The whole of the re-arrangement is done using high-level filing system calls
to minimise the risk of corrupting discs. However, the FileCore bug which
can corrupt nearly-full discs *could* rear its ugly head. I have not had any
problems with the current version. An early development version *did* cause
a corruption of a couple of very large files but these are handled
differently now so the corruption should not occur.
Usage
-----
Before running this program on a disc you should make sure it has enough
free space on it for PackDisc to operate. If necessary move a large file off
the disc and replace it afterwards. I would recommend having at least 1MB
of free space on a hard drive and about 30K on a floppy. It is probably
possible to do it with less.
If you use FSLock, you will either need to edit the !RunImage and change the
names of the temporary directories «Scratch» and «STORE» to a writable
location on the disc or disable it while PackDisc is running.
Either double click on the icon to run it single tasking, or shift-drag it
to a TaskWindow.
Enter the filename of the directory you want to optimise. This *must* be a
full path including the FS and disc name/drive number, and must be on a
filecore based filing system. You should not attempt to optimise any of the
parent directories of the temp directories, or directories in image files.
You may either optimise just the directory stated, or recurse into all its
subdirectories as well.
The Verbosity level is set near the start of the program. This will determine
how much output is given.
Level 0 Gives only the space saved statistics for the whole run of the program
when it finishes.
Level 1 Also gives you the space saved statistics for each directory.
Level 2 Tells you what overall operation it is trying to acheive at each step.
Level 3 Tells you as it moves each file and gives a breakdown of the groups.
Level 4 Gives some information on how the grouping is being derived.
After a while the program should terminate, telling you how much space the
files take (rounded to sectors), how much wasted space was recovered as free
space, and how much wasted space remains. This often shows that about a third
of the original wasted space was recovered, but depends very much on how many
relatively small files there are in the directories optimised.
There is no point running it more than once on the same directory as no further
space can be saved (at least not with this program)
IMPORTANT: do not run *ANY* other program which could possibly write to the
disc and alter the amount of free space at the same time as PackDisc. At best
it will cause PackDisc to report the space saved incorrectly, but it will
probably make it bomb out with an error.
Utilities such as LongFiles or SymLinks will cause problems, so should be
disabled before running - I would recommend running on a cleanly restarted
machine without running the boot sequence (hold down <shift> while
restarting). PackDisc will complain if it comes across a filename of more
than 10 characters to try to prevent some of these problems.
If an error does occur, don't worry, none of your files will be lost. Any
files or directories which appear to be missing are in PackDisc's store
directory. This is $.«STORE» on the disc you are optimising unless you have
amended the program to get round FSLock. PackDisc will tell you which
directory the contents of the store should be moved to when it exits.
During the course of its normal operation, PackDisc will create several
directories which fsck describes as "Directories bigger than the minimum
size". This is nothing to worry about - it is allowing more files to share
the same fragment with the directory.
Another way that you can create more space on a hard disc is to reduce its
size. If you have a disc formatted to a value between about 500MB and 512MB
or so, and the LFAU is 2K, reducing it to just less than 500MB so that the
LFAU is only 1K and putting all the files back on will probably halve the
wasted space. I had over 40MB of wasted space on my disc at 511.8M,
reformatting it to about 499.5M reduced this to about 20M representing an
overall saving of nearly 10M. There is another boundary size for the .5K to
1K LFAU transition but I don't know what this is.
DISCLAIMER
----------
While every effort has been taken to ensure that files do not get lost or
corrupted, I WILL NOT BE HELD RESPONSIBLE for any loss that occurs as a
direct or indirect result of using this program. It is up to you to make sure
any important data is adequately backed up, and irrespomsible not to do so.
[I guess that makes *me* irresponsible... oh well 8-]
Having said that, I would like to know if there is a problem with the
program, especially if you can see where it needs fixing.
Shortcomings of this version
----------------------------
- Single tasking (although it can be run in a taskwindow). Options
(ie the display output level and names of temp directories) are changed
by editing a line in the program code.
- Uses far too many file operations. This makes it rather slow. A version
using lower level operations would be able to go a lot faster.
- Will not work if any other program is accessing the disc at the same time
(or rather writing to it).
- Does not cope gracefully with errors. The user must replace files which
are stuck in its temp directory and delete any files in its scratch area.
Having said that, error do not occur in my experience unless another
program accesses the disc at the same time or there was too little free
disc space.
- Cannot check potential savings without first doing it. This makes for
lots of tedious copying which may not free any space.
- Can cause the free space map to become very fragmented during the course
of normal operation. This can be partially alleviated by a *Compact.
- Is slowed down considerably by a very fragmented free space map. This
and the one above do not work together very well...
- The optimisation algorithm is not perfect and sometimes gives
sub-optimal arrangements. Indeed I have seen negative savings
occasionally.
- Has not yet been tested on the new FileCore, although there is no reason
why it shouldn't work.
If you have any problems mail me (although the Email address is only valid
until the end of the month)
The Author
----------
PackDisc was written by Steve Lee. If you would like to receive an updated
version after I have made it MultiTask, send a disc and an SAE to the address
below - I don't know if I'll be able to get net access after I leave uni.
If you fancy sending any money too I'm sure I'd love it 8-)
Might even encourage me to redo it with less kludges and a better
algorithm...
My home address is:
Steve Lee
114 Cherington Rd.
Selly Park
Birmingham
B29 7SR
England
Until the end of June 96:
my Email address is sml1007@cam.ac.uk
website at http://sml1007.robinson.cam.ac.uk/~sml1007/
(I guess you'll have to be quick to use either of these though :-)